from datetime import timedelta
from redis import StrictRedis



# 配置文件基类
class Config(object):

    # 配置DEBUG
    DEBUG = True
    # SECRET_KEY 配置session密钥
    SECRET_KEY = 'fjfjjsfoiwjeoi'



    # 数据库配置
    # 配置地址
    SQLALCHEMY_DATABASE_URI = 'mysql://root:e1ddie2@localhost:3306/ihome'
    # 配置压制警告
    SQLALCHEMY_TRACK_MODIFICATIONS = False
    # 配置数据库自动提交
    SQLALCHEMY_COMMIT_ON_TEARDOWN = True

    # redis 配置
    # 新建变量保存地址端口
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379

    # session配置
    # 配置session类型
    SESSION_TYPE = 'redis'
    # 配置签名存储
    SESSION_USE_SIGNER = True
    # 配置session存储的redis服务器
    SESSION_REDIS = StrictRedis(REDIS_HOST, REDIS_PORT)
    # 设置session有效期
    PERMANENT_SESSION_LIFETIME = timedelta(days=2)


# 开发环境配置信息
class DevelopConfig(Config):
    LEVEL_NAME = 'DEBUG'
    pass

# 线上环境配置信息
class ProductConfig(Config):
    DEBUG = False
    LEVEL_NAME = 'ERROR'
    pass

# 测试环境配置信息
class TestConfig(Config):
    LEVEL_NAME = 'DEBUG'
    pass


# 统一获取接口
config_dict = {
    'develop' : DevelopConfig,
    'product' : ProductConfig,
    'test' : TestConfig
}

